package Classic150;

public class 两数之和2输入有序数组 {
    /*
        首尾双指针缩减搜索空间
     */
    public int[] twoSum(int[] numbers, int target) {
        int low = 0, high = numbers.length - 1;
        while (low < high) {
            int sum = numbers[low] + numbers[high];
            if (sum == target) return new int[]{low + 1, high + 1};
            else if (sum < target) ++low;
            else --high;
        }
        return new int[]{-1, -1};
    }
}
